package controller;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/*注解
 * @WebServlet(urlPatterns = "/"):在后端匹配外部请求地址，根据地址是否和urlPatterns一致来判断，
 * 如果请求地址和urlPatterns值一致，那么web会自动调用当前MainController类中的请求方法*/
/*controller层：接收外部（前端，第三方）请求以及对请求的响应，没有业务逻辑*/
@WebServlet(urlPatterns = "/")
public class MainController extends HttpServlet{
    /*如果MainController接收的请求是get请求，那么会默认调用doGet方法；
     * 接收的请求是post请求，那么会默认调用doPost方法
     * */
    /*子类重写父类方法：Java中多态的一种表现*/
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        // 设置项目的欢迎页
        // 通过转发的方式将请求转发到需要转发的页面
        /*控制层异常使用抛出，其他层(业务层，数据访问层)异常使用捕获*/
        req.getRequestDispatcher("view/main.jsp").forward(req,resp);
    }
}
